// 订阅者，用来管理watcher
class Dep {
  constructor() {
    // 用来存放若干依赖
    this.deps = []
  }
  /**
   * 收集依赖
   * @param {* 赖以关系} dep 
   */
  addDep(dep) {
    this.deps.push(dep)
  }
  /**
   * 通知所有依赖取做更新
   */
  notify() {
    this.deps.forEach(dep => {
      return dep.update()
    });
  }
}